
Forumena Altair
|
Posted - 2011.05.25 11:54:00 -
[1]
Edited by: Forumena Altair on 25/05/2011 11:57:49
Originally by: CCP Greyscale Edited by: CCP Greyscale on 23/05/2011 00:57:22 Ok, so now we're getting into the ins and outs of what actually happened, here's some more insight.
First up, there was zero code touched in this change. We thought we would have to do some initially, but it turned out that the system as-was supported everything we wanted already. All I did was alter the value of some attributes on various types, which is (with a fair bit of hand-waving to avoid having to explain all the ins and outs of our internal tools) essentially just changing some values in the DB.
On all our jump-related stuff we have an attribute (ie, a DB value with a name) called "Jump Harmonics". If the Jump Harmonics on your ship is equal to or greater than the Jump Harmonics on the thing you're trying to jump with (cyno, jump bridge, jump portal etc), you're good, otherwise computer says no. Previously, we had covert-capable ships, modules etc set to 2 and everything else jump-related to 1 (IIRC). What we did was change covert to 5, most ships to 0, and ships with jump drives to -5, along with setting covert mods to 5, normal cynos to -5 and jump bridges/portals to 0. Following the equal-or-greater-than rule, this achieves everything we wanted just by changing a few dozen DB values. The choice of 5 and -5 was just to give us breathing room in the future in case we invented any more levels of granularity in between. (As you will see later, this last bit had unintended consequences.)
When I set this up I looked up everything that had Jump Harmonics set (fun fact, if you don't define an attribute it takes the default value, and the default was and still is 0, so most ships don't have it defined, making the result of this lookup easier to understand), and made changes accordingly, and re-verified it in the same way when I was done.
The reason T3s slipped through is because by default they have Jump Harmonics 0, as you'd expect, and it's set to 2 (well, 5 now that I've fixed it...) using a different attribute, which was necessary (and sensible) given the way we apply effects. This attribute obviously doesn't come up when you look at things with Jump Harmonics set, because it's not Jump Harmonics. Add to that the fact that using Covert Reconfiguration subsystems in conjunction with Black Ops is a fairly niche activity (we've all seen the Black Ops usage stats...), and the fact that Design had handed over an (incorrect) list of stuff that should and shouldn't work, and you end up with this sort of thing being missed on occasion.
So yeah, this isn't a case of an old code bug being reverted and not caught, it's a case of doing DB value updates and forgetting that certain things are special-cased. For the record, the original "fix" for letting Covert Reconfiguration work with Black Ops is still working on TQ right now - it's setting Jump Harmonics to 2, just like it was supposed to 
So if jump harmonics is a simple DB value that can be modified by changing a subsystem, it shouldn't be a huge leap to assume that ships can or cannot use Covert Cyno Generators is also a similar DB value that can be modified via subsystem.
And if that's the case, When the T3 covert subsystem was originally introduced it was supposed to be able to use the Covert Cyno Generator as shown here :
Why did you guys the delete the description in a patch instead of "fixing the bug" and claming this line of crap? :
Originally by: CCP Chronotis we actually don't mind the subsystem having the ability to fit a covert cyno. The issue we encountered was our use of new fitting restrictions was never really meant for subsystems and we have to wait for code changes to allow that happen or revert the covert cyno back to using a good old cpu based fitting restriction.
The "niche" players haven't forgot about that. 
|